package com.zzyl.common.ai;

import com.baidubce.qianfan.Qianfan;
import com.baidubce.qianfan.core.auth.Auth;
import com.baidubce.qianfan.model.chat.ChatResponse;

/**
 * @author xiaoy
 */
public class AiQinFan {
    public static void main(String[] args) {
        ChatResponse response = new Qianfan(Auth.TYPE_OAUTH, "mIlELq6Y1x77yZHkVkdt2srJ", "4ETglDQeaq4P50lvKnv3WYEUjoXV5wld").chatCompletion()
                /*.model("ERNIE-4.0-8K-Preview") // 使用model指定预置模型
                // .endpoint("completions_pro") // 也可以使用endpoint指定任意模型 (二选一)
                .addMessage("user", "夸一下詹天师") // 添加用户消息 (此方法可以调用多次，以实现多轮对话的消息传递)
                .temperature(0.7) // 自定义超参数
                .execute(); // 发起请求*/
                // 模型名称，要选择自己开通付费的模型
                .model("ERNIE-4.0-8K-Preview")
                // 聊天内容，可以设置多个，每个消息包含role（角色，user表示用户，assistant表示模型），content（消息内容）
                .addMessage("user", "夸一下詹天师")
                // 采样参数，取值范围(0,1]
                .temperature(0.7)
//                .maxOutputTokens(2000) // 模型输出最大长度，取值范围[2, 2048]
                // 模型输出格式，取值范围：text（文本）、json_object（JSON对象）
                .responseFormat("json_object")
                .execute();
        System.out.println(response.getResult());
    }
}
